home *** CD-ROM | disk | FTP | other *** search
-
- ===============================================
-
- @(#) OKAMI SHELL VERSION 1.2 - KURZEINFÜHRUNG
-
- ===============================================
- Stand: 30.12.90
-
-
-
- Okami-Shell ist eine Unix-ähnliche Kommandoshell für alle Atari ST-Rechner.
- Vorbild war die AIX-Shell des IBM RT PC 6150, deren Vorbild wiederum die
- Unix-Bourne-Shell war.
-
- Sie arbeitet:
- * mit jeder Speicherkonfiguration (auch mit 512K)
- * mit jeder Bildauflösung
- * mit Diskette, Ramdisk und Festplatte; theoretisch auch von
- einem Eprom aus
-
- Beschränkungen:
- * Der Start der Shell von Diskette ist möglich, aber wegen der
- geringen Geschwindigkeit wird Ramdisk oder Festplatte empfohlen.
- * Zur Benutzung der Pipe muß mindestens ein Laufwerk beschreibbar
- sein. Dies muß nicht notwendig das Laufwerk sein, von dem die
- Shell gestartet wurde.
-
- Zum Starten der Shell:
- * sh.ttp anklicken und als Parameter ein Minuszeichen angeben.
- oder: * msh.prg anklicken.
- Für Hilfe:
- * "help" oder "cmds -C" eingeben.
- * Die Help-Taste liefert eine Anleitung zu jedem internen Kommando.
- Zum Beenden der Shell:
- * "exit" eingeben.
- oder: * Ctrl-V drücken.
-
-
- Das wichtigste in Kürze:
- * Standard-Unix-Kommandos: cat, ls, cd, pwd, cp, mv, rm, rmdir,
- df, pg, echo, grep, find, chmod, touch, date, mkdir, basename,
- dirname, time, xargs, backup, if, while, shutdown,...
- * Über 90 eingebaute Kommandos
- * eingebauter UPN-Rechner mit über 80 Funktionen
- * Shell-Variablen setzen in der Form NAME=WERT
- * Ausführung von der Shell als TTP-Parameterzeile übergebenen
- Kommandos mit darauffolgender Beendigung der Shell möglich
- * Konfiguration der Shell durch eine nach Programmstart auszu-
- führende Kommandodatei (Profile)
- * Eingabe, Ausgabe und Fehlerausgabe aller interner Kommandos
- umleitbar mit <, >, >>, 2>, 2>>
- * Ein- und Ausgabeumleitung für alle Programme, die Gemdos-Ausgabe
- benutzen
- * Simulation von Pipelining: Die Ausgabe eines Kommandos wird
- zur Eingabe eines anderen; beliebig schachtelbar
- * Command Substitution: z.B.
- echo Der Basisname von $FILE ist `basename $FILE`
- * Unix-Wildcards, z.B. a[bcd-f]*e?.[xy]? etc.
- * Ausführung von Shellscripts (Batch-Files) mit Parameterübergabe
- * Shellfunktionen = speicherresidente Shellscripts möglich; Shell-
- funktionen können interne Kommandos umdefinieren (die ursprüng-
- lichen Kommandos können trotzdem noch aufgerufen werden
- * Shellfunktionen können auch mit der Tastatur eingegeben werden
- * Binärprogramme können resident gehalten und über Shellfunktionen
- gestartet werden
- * Tastatureingabe mit History (Zurückholen vorheriger Eingaben
- per Tastendruck)
- * Alle Tasten inkl. F-Tasten frei mit Kommandos belegbar
- * Spezialkommandos zum Speicherauslesen
- * Suchen von Programmen auf konfigurierbaren Pfaden, mit
- konfigurierbaren Extendern zur Erkennung ausführbarer
- Programme
- * Pfadangaben können wie in TOS (z.B. d:\shell\sh.ttp, getrennt mit
- Backslash) oder Unix (z.B. d:/shell/sh.ttp, getrennt mit Slash)
- angegeben werden
- * Programmierung mit if und while, schachtelbar
- * Alle GEM-Programme sind von der Shell aus ausführbar
- * Online-Help mit Syntaxerklärung aus einer editierbaren Datei
- * Help-Taste liefert Anleitung zu jedem Kommando aus der Anleitungs-
- Datei der Dokumentation (commands.doc, ca. 140 KB)
- * Auswertung und Einstellung der Environment-Variablen
- * Quellcode der "system"-Funktion zum Aufruf der Shell aus eigenen
- Programmen
- * Deutsche Dokumentation aller interner Kommandos mit Beispielen
- * Software-Support bei Fehlern und Fragen, nicht gebunden an
- die Zahlung von Anerkennungsbeiträgen etc.
- * Quellcode erhältlich
- * Pd-Software-Kontaktkarte
-
- Das wichtigste in Beispielen:
-
- rm test.o (Löschen einer Datei)
-
- cat test.txt (Anzeige einer Datei)
-
- cd d:\shell\bin (Wechsel des aktuellen Laufwerks und des
- aktuellen Directories)
-
- cd .. (Wechsel ins Parent-Directory des aktuellen
- Directories)
-
- ls -ls d:\*.* (Ausführliche Dateiliste mit Attributen,
- Dateigröße und -Datum, sortiert nach der
- Dateigröße)
-
- ls -l d:\*.* >dir.txt (Umleitung der Ausgabe)
-
- hd test.prg | pg (Seitenweise Ausgabe eines Hexdump)
-
- date >>datum.log (Anfügen des Datums an das Ende einer Datei)
-
- echo Bitte Name eingeben
- read NAME (Benutzung von Shellvariablen)
- echo Der Name ist $NAME
-
- TMPNAME=dat$$.tmp (Erzeugen eines eindeutigen Dateinamens
- durch die System-Shellvariable $, deren
- Wert sich ständig ändert [in Unix:
- Prozessnummer])
-
- PS1='Eingabe >' (Ändern des Shell-Prompts)
-
- a=`date` (Einlesen des Datums in die Variable a)
- echo Das Datum ist $a
-
- grep printf *.c (Suchen von "printf" in allen C-Dateien)
-
- df C: E: F: (Ausgabe der Plattenbelegungen)
-
- chmod +hr secret.dat (Verstecken und Schreibschützen einer Datei)
-
- help | grep chmod (Ausgabe der Syntax des Kommandos chmod)
-
- find d:\ test.* (Ausgabe des Pfades aller Dateien namens
- test.* auf Laufwerk D:)
-
- pg $HOME\profile (Seitenweise Ausgabe der Konfigurationsdatei)
-
- cursor 12 (Setzen der Cursor-Geschwindigkeit)
-
- mouse x y (Abfrage der Maus-Koordinaten, Speichern der
- Werte in den Variablen x und y)
-
- fsel *.c test.c (Auswahl einer Datei mit der Fileselect-Box)
-
- touch sh.c (Erneuern des Dateidatums von sh.c)
-
- cls (Bildschirm löschen)
-
- time test.tos (Messen der Ausführungszeit eines Programmes
- auf 1/100 Sekunden genau)
-
- export TERM (Übernahme der Variablen TERM ins Environment)
-
- find d:\ *.bak | xargs rm (Löschen aller *.bak-Dateien auf
- Partition D:)
-
- find d:\ *.* | backup (Sichern aller Dateien von Partition D:
- auf Diskette)
-
- find e:\ *.* | xargs wc | pg (Seitenweise Ausgabe der Anzahlen der
- Zeilen, Zeichen und Worte aller Dateien
- auf Partition E:)
-
- df -mn | xargs find {}\ *.* | wc -l
- (Zählen aller Dateien auf allen Laufwerken)
-
- upn 17 sqr pi * (Berechnen der Oberfläche eines Kreises mit
- Radius 17)
-
- keydef F4 "dir *.c" (Tastendefiniton: "dir *.c" wird auf die Taste
- F4 gelegt)
-
- rm test.dat ; echo test.dat ist gelöscht
- (Verkettung von Anweisungen)
-
- format (Formatieren der Diskette in Laufwerk A:)
-
- format -t40 -s10 B: (Formatieren von Diskette B: mit 40 Tracks
- und 10 Sektoren/Track)
-
- df(e:/newdf.sh) (Laden der Datei e:/newdf.sh und Abspeichern
- als Shellfunktion, die anstelle des Komman-
- dos df benutzt werden kann; in der Datei
- kann das ursprüngliche Kommando df unter
- dem Namen !df benutzt werden)
-
- signum(e:signum2.prg) (Laden und residenthalten von signum2.prg,
- Aufruf über die Shellfunktion "signum")
-
- while [...] (Schleifenbildung und Programmierung)
- do
- ....
- if [...]
- then
- ...
- fi
- break (Abbruch der while-Schleife)
- continue (Neuer Schleifendurchlauf)
- done
-
-
- Weitere Beispiele: siehe commands.doc und tricks.doc
-
-
- Dokumentation:
-
- readme Kurzeinführung
- release Versions-Identifikation der Shell
- okami.doc Bedienung der Shell
- commands.doc Bedienung der internen/externen Kommandos
- tricks.doc Tips&Tricks zur Benutzung der Shell
- changes.doc Änderungen der Shell
- kompat.doc Kompatibilität zu älteren Shell-Versionen
- vergl.doc Vergleich mit der Gulam- und Master-Shell
- copying Regelung des Kopierens der Shell
- system.doc Benutzung der "system"-Funktion
- msh.doc Benutzung der Micro-Shell
- autor.doc Anschrift des Programmautors
-
-